package ${packageName};

<#if applicationPackage??>
import ${applicationPackage}.R;
import ${applicationPackage}.BR;
<#if isStronglyType>
import ${applicationPackage}.databinding.${className}Binding;
</#if>
</#if>
<#if !isStronglyType>
import com.jone.base.model.viewModel.BaseLoadDataViewModel;
import android.databinding.ViewDataBinding;
</#if>
import com.jone.base.ui.BindingBaseLoadDataFragment;
import <#if applicationPackage??>${applicationPackage}.</#if>model.viewModel.${viewModelClass};
import <#if applicationPackage??>${applicationPackage}.</#if>model.viewModel.interfaces.${iViewName};

/**
 *  ${classDescribe}
 */
public class ${className} extends BindingBaseLoadDataFragment<#if isStronglyType><${viewModelClass}, ${className}Binding></#if> implements ${iViewName} {

    @Override
    protected int layoutResId() {
        return R.layout.${layoutName};
    }

    @Override
    protected <#if isStronglyType>${viewModelClass}<#else>BaseLoadDataViewModel</#if> onCreateViewModel() {
        return  new ${viewModelClass}(this);
    }

    @Override
    protected void setVariable(<#if isStronglyType>${className}Binding binding, ${viewModelClass} viewModel<#else>ViewDataBinding binding, BaseLoadDataViewModel viewModel</#if>) {

        binding.setVariable(BR.viewModel, viewModel);

    }
}
